% SL Script to control PDF generation, do a 2 page on one

% FYI: setupPage ( float translate_x, float translate_y, float rotate,
% float scale_x, float scale_y, int keepOnSamePage )

define pdf_page_setup(pagenum) {
	variable onSamePage;
	variable scaleFactor;
	variable scaleFactor2;
	variable correctionFactor;

	scaleFactor = pageWidth() / (pageHeight() * 1.0); % promote to float
	scaleFactor2 = pageHeight() / (pageWidth() * 2.0); % promote to float

	if (scaleFactor2 < scaleFactor) scaleFactor = scaleFactor2;

	% first find out which setup to apply

	onSamePage = pagenum mod 2;

	correctionFactor = pageWidth() - (pageHeight() * scaleFactor);

	if (correctionFactor > 0) {
		correctionFactor = correctionFactor / 2.0;
	} else {
		correctionFactor = 0;
	}

	if (onSamePage == 0) {

setupPage(pageWidth()-correctionFactor,pageHeight()/2.0,90.0,scaleFactor,scaleFactor,1);
	} else {

setupPage(pageWidth()-correctionFactor,0,90.0,scaleFactor,scaleFactor,0);
	}

	setAnnotationPageDivider(2);	% as we put 2 page on one to correct the annotations
}

% no annotations for this run

define action_pdfmark(s,n) {

}
